 #!/usr/bin/env python3
"""
调试路径问题
"""

import os
from pathlib import Path

def debug_paths():
    """调试路径问题"""
    print("🔍 调试路径问题...")
    
    # 当前工作目录
    cwd = os.getcwd()
    print(f"📁 当前工作目录: {cwd}")
    
    # 检查模型目录
    model_dir = "backend/models/saved_models"
    abs_model_dir = os.path.abspath(model_dir)
    print(f"📁 模型目录 (相对): {model_dir}")
    print(f"📁 模型目录 (绝对): {abs_model_dir}")
    
    # 检查目录是否存在
    print(f"📁 模型目录是否存在: {os.path.exists(model_dir)}")
    print(f"📁 绝对路径是否存在: {os.path.exists(abs_model_dir)}")
    
    # 列出模型目录中的文件
    if os.path.exists(model_dir):
        print(f"📋 模型目录中的文件:")
        for file in os.listdir(model_dir):
            file_path = os.path.join(model_dir, file)
            file_size = os.path.getsize(file_path)
            print(f"  📄 {file} - {file_size} 字节")
    else:
        print("❌ 模型目录不存在")
    
    # 检查具体的模型文件
    model_files = {
        'lightgbm': 'lightgbm_model.pkl',
        'xgboost': 'xgboost_model.pkl',
        'mlp': 'mlp_model.pkl',
        'ensemble': 'ensemble_config.json'
    }
    
    print(f"\n📋 检查具体模型文件:")
    for model_name, filename in model_files.items():
        file_path = os.path.join(model_dir, filename)
        abs_file_path = os.path.abspath(file_path)
        file_exists = os.path.exists(file_path)
        abs_file_exists = os.path.exists(abs_file_path)
        
        print(f"  📄 {model_name}: {filename}")
        print(f"    相对路径: {file_path} - {'✅ 存在' if file_exists else '❌ 不存在'}")
        print(f"    绝对路径: {abs_file_path} - {'✅ 存在' if abs_file_exists else '❌ 不存在'}")
        
        if file_exists:
            file_size = os.path.getsize(file_path)
            print(f"    文件大小: {file_size} 字节")

if __name__ == "__main__":
    debug_paths()